Displaying three dimensional graphics is a processor and memory intensive process. Each object must be displayed and updated each frame, thereby heavily reducing frame rates when many objects are being displayed at once. Enabling a program to have both high quality graphics and a high frame rate is a challenging task.
In previous systems, this has been accomplished using level of detail to reduce the number of pixels in a graphical object (e.g., reducing the resolution of textures used in the graphical object), thereby generating a graphical object of lesser quality to be displayed. This method increased frame rates but came at the cost of a noticeable decrease in quality. In addition, many modern computing systems rely on increased processor power, available memory, and other hardware improvements to increase frame rates in three-dimensional environments.